Consulta de Guías Docentes



Academic Year/course: 2021/22

625 - Bachelor's Degree in Industrial Processes' Data Engineering

29518 - Programming


Syllabus Information

Academic Year:
2021/22
Subject:
29518 - Programming
Faculty / School:
175 - Escuela Universitaria Politécnica de La Almunia
Degree:
625 - Bachelor's Degree in Industrial Processes' Data Engineering
ECTS:
6.0
Year:
1
Semester:
Second semester
Subject Type:
Compulsory
Module:
---

1. General information

1.1. Aims of the course

After having taken a first programming course in which they have learned to design small programs (Fundamentals of Computer Science, 1st semester), in this course the student will learn the technology and the methodologies to be applied through the paradigm of programming oriented to objects, ensuring that the designs made are correct, robust and efficient.

The subject has a marked applied character. The student will learn the advanced concepts of object-oriented programming from a set of problems present in current software development.

These approaches and objectives are aligned with the following Sustainable Development Goals (SDGs) of the United Nations 2030 Agenda (https://www.un.org/sustainabledevelopment/es/), in such a way that the acquisition of the results of Learning the subject provides training and competence to contribute to some extent to its achievement:

  • Goal 4: Ensure inclusive, equitable and quality education and promote lifelong learning opportunities for all.
  • Goal 5: Achieve gender equality and empower all women and girls.
  • Goal 10: Reduce inequality within and between countries.

1.2. Context and importance of this course in the degree

Programming is a subject that appears after the subject "Fundamentos de Informática".

It is a compulsory subject that is within the Data Processing module, in the subject "Algorithms and Data", together with the subjects of "Estructura de Datos y Algoritmos" y "Programación Paralela".

1.3. Recommendations to take this course

The student who takes this course must have basic training in programming, and it is highly recommended to have passed the "Fundamentos de Informática" course.

2. Learning goals

2.1. Competences

Upon passing the subject, the student will have acquired the following skills:

  • CB2 - That students know how to apply their knowledge to their work or vocation in a professional way and possess the competencies that are usually demonstrated through the development and defense of arguments and problem solving within their area of study.
  • CG03 - Apply techniques for the acquisition, management and treatment of data in Engineering.
  • CG05 - Solve technological problems that may arise in data engineering.
  • CT01 - Work cooperatively, assuming and respecting the role of the different team members.
  • CT05 - Communication of results effectively.
  • CT07 - Analyze and solve problems autonomously, adapt to unforeseen situations and make decisions.
  • CE01 - Design and implement algorithms in high-level programming languages, using current methodologies.
  • CE14 - Build the most appropriate data types and structures to solve a problem.

2.2. Learning goals

To pass this subject, the student must demonstrate the following results:

  • Analyze problems, and design and implement algorithmic solutions to those problems.
  • Solve problems in a disciplined way, obtaining a correct, effective and efficient implementation.
  • It uses the computer at the user level, managing operating systems and programming environments.
  • Know the computer equipment both physically and logically.
  • Identify information needs to solve problems, retrieve it, interpret it and apply it to resolution.

2.3. Importance of learning goals

This subject is the first contact with object-oriented programming. If we attend to problem solving, Informatics deals with the knowledge, design and exploitation of computing and computer technology, constituting a discipline that:

  • Develops the ability to express solutions as algorithms, and their role in approaching areas such as system design, problem solving, simulation, and modeling.
  • It requires a disciplined approach to problem solving, from which quality solutions are expected.
  • Control the complexity of problems, first through abstraction and simplification, then design solutions by integrating components.
  • It facilitates the understanding of the opportunities offered by the automation of processes, and how people interact with computers.
  • It facilitates the learning, through experimentation, of basic principles such as conciseness and elegance, as well as the recognition of bad practices.

3. Assessment (1st and 2nd call)

3.1. Assessment tasks (description of tasks, marking system and assessment criteria)

The evaluation process will include two types of action:

  • A continuous evaluation system, which will be carried out throughout the learning period.
  • A global assessment test, reflecting the achievement of learning results, at the end of the teaching period.

 

1-Continuous evaluation system.

Following the spirit of Bologna, regarding the degree of involvement and continued work of the student throughout the course, the evaluation of the subject considers the continuous evaluation system as the most appropriate to be in line with the guidelines set by the new framework from the EHEA.

The continuous evaluation system will have the following group of qualifying activities:

  • Works: The works will consist of practical exercises, solution to proposed problems, questionnaires, etc. The correctness and quality of the results will be assessed. These practices will be carried out in groups of a maximum of 20 students. The percentage with respect to the global mark of all these works will be 40%.
  • Assessment tests: There are two throughout the course. The percentage with respect to the global mark of each evaluation test will be 30%.

It is necessary to pass the works and written tests separately so that they can contribute to the average of the final grade.

To opt for the Continuous Assessment system, you must attend at least 80% of the face-to-face activities (practices, technical visits, classes, etc.)

 

2-Global final evaluation test.

The student must opt ​​for this modality when, due to their personal situation, they cannot adapt to the rhythm of work required in the continuous evaluation system, have suspended or want to upload a grade having participated in said evaluation methodology.

 

The global final evaluation test will have the following group of qualifying activities:

  • Exam: It is carried out in the official calls. This option can always be followed even though the student has used the continuous assessment system. (50% of the final grade).
  • The assignments, practical exercises, solution to proposed problems, questionnaires, etc., that have been carried out during the course, and can be delivered in a new version on the day of the call. (50% of the final grade).

4. Methodology, learning tasks, syllabus and resources

4.1. Methodological overview

The subject is strongly based on practice, so it has many practical works in class.

The organization of teaching will be carried out using the following steps:

  • Lectures: Theoretical activities carried out mainly through exposition by the teacher, where the theoretical supports of the subject are displayed, highlighting the fundamental, structuring them in topics and or sections, interrelating them.
  • Practice Sessions: The teacher resolves practical problems or cases for demonstrative purposes. This type of teaching complements the theory shown in the lectures with practical aspects.
  • Laboratory Workshop: The lecture group is divided up into various groups, according to the number of registered students, in order to make up smaller sized groups.
  • Individual Tutorials: Those carried out giving individual, personalized attention with a teacher from the department. Said tutorials may be in person or online.

If classroom teaching were not possible due to health reasons, it would be carried out on-line.

Further information regarding the course will be provided on the first day of class.

4.2. Learning tasks

Face-to-face generic activities:

  • Theory Classes: The theoretical concepts of the subject are explained and illustrative examples are developed as a support to the theory when necessary.
  • Practical Classes: Problemas and practical classes are carried out, complementary to the theoretical concepts studied.
  • Laboratory Workshop: This work is tutored by a teacher, in groups of no more than 20 students.

Generic non-class activities

  • Study and understanding of the theory taught in the lectures.
  • Understanding and assimilation of the problems and practical classes solved in the practical classes.
  • Solving proposed problems, project, etc.
  • Preparation of laboratory workshops, preparation of summaries and reports.
  • Preparation of the written tests for continuous assessment and final exams.

4.3. Syllabus

The course program is structured around two components of complementary content:

  • Theorists.
  • Practical

Theoretical contents:

  • Object-oriented programming languages:
    • Introduction to the paradigm of object-oriented programming.
    • Classes and objects.
  • Objects, classes, methods:
    • Class definition: attributes and methods.
    • Object creation: constructors.
    • Method overload.
  • Concept of inheritance:
    • Inheritance and attributes.
    • Inheritance and methods.
    • Abstract methods and abstract classes.
  • Polymorphism and packages:
    • Concept and implementation.
    • Definition of interface, implementation and use.
    • Interfaces extension.
    • Exceptions: concept and mode of use.
    • Definition of packages.
    • Access protection.
    • Serialization and persistence:
  • Serialization and persistence:
    • Introduction to data persistence.
    • Serialization of objects.

Practical contents:

Every part has related practices. As the concepts are shown, the practices are going to be presented, in the classroom or in moodle platform.

4.4. Course planning and calendar

The subject has 6 ECTS credits, which represents 150 hours of student work in the subject during the trimester, in other words, 10 hours per week for 15 weeks of class.

A summary of a weekly timetable guide can be seen in the following table.

  • 1 hour of lectures
  • 3 hour of laboratory workshops
  • 6 hours of other activities

Nevertheless, the previous table can be shown in greater detail, taking into account the following overall distribution:

  • 15 hours of lectures.
  • 41 hours of laboratoy workshop.
  • 4 hours of wirtten assessment tests, two hours per test.
  • 45 hours of exercices and tutelated work, divided up the 15 weeks of the second semester.
  • 45 hours of personal study, divided up the 15 weeks of the second semester.

There is a tutorial calendar timetable set by the teacher taht can be requested by the students who want a tutorial.

4.5. Bibliography and recommended resources


Curso Académico: 2021/22

625 - Graduado en Ingeniería de Datos en Procesos Industriales

29518 - Programación


Información del Plan Docente

Año académico:
2021/22
Asignatura:
29518 - Programación
Centro académico:
175 - Escuela Universitaria Politécnica de La Almunia
Titulación:
625 - Graduado en Ingeniería de Datos en Procesos Industriales
Créditos:
6.0
Curso:
1
Periodo de impartición:
Segundo semestre
Clase de asignatura:
Obligatoria
Materia:
---

1. Información Básica

1.1. Objetivos de la asignatura

Tras haber cursado una primera asignatura de programación en la que se ha aprendido a diseñar pequeños programas (Fundamentos de Informática, 1º semestre), en esta asignatura el alumno va a aprender la teconología y las metodologías a aplicar mediante el paradigma de la programación orientada a objetos, velando porque los diseños realizados sean correctos, robustos y eficientes.

La asignatura tiene un marcado carácter aplicado. El alumno aprenderá los conceptos avanzados de programación orientada a objetos a partir de un conjunto de problemas presentes en el desarrollo actual de software.

Estos planteamientos y objetivos están alineados con los siguientes Objetivos de Desarrollo Sostenible (ODS) de la Agenda 2030 de Naciones Unidas (https://www.un.org/sustainabledevelopment/es/), de tal manera que la adquisición de los resultados de aprendizaje de la asignatura proporciona capacitación y competencia parfa contribuir en cierta medida a su logro:

  • Objetivo 4: Garantizar una educación inclusiva, equitativa y de calidad y promover oportunidades de aprendizaje durante toda la vida para todos.
  • Objetivo 5: Lograr la igualdad entre los géneros y empoderar a todas las mujeres y las niñas.
  • Objetivo 10: Reducir la desigualdad en y entre los países.

1.2. Contexto y sentido de la asignatura en la titulación

Programación es una asignatura que aparece a continuación de la asignatura "Fundamentos de Informática".

Es una asignatura obligatoria que se encuentra dentro del módulo de Procesado de Datos, en la materia "Algoritmos y Datos", junto a las asignturas de "Estructura de Datos y Algoritmos" y "Programación Paralela".

1.3. Recomendaciones para cursar la asignatura

El alumno que curse esta asignatura ha de contar con una formación básica en programación, siendo muy recomendable haber superado la asignatura "Fundamentos de Informática".

2. Competencias y resultados de aprendizaje

2.1. Competencias

Al superar la asignatura, el alumno habrá adquirido las siguientes competencias:

  • CB2 - Que los estudiantes sepan aplicar sus conocimientos a su trabajo o vocación de una forma profesional y posean las competencias que suelen demostrarse por medio de la elaboración y defensa de argumentos y la resolución de problemas dentro de su área de estudio.
  • CG03 - Aplicar técnicas para la adquisición, gestión y tratamiento de datos en la Ingeniería.
  • CG05 - Resolver problemas tecnológicos que puedan plantearse en la Ingeniería de datos.
  • CT01 - Trabajar cooperativamente asumiendo y respetando el rol de los diferentes miembros del equipo.
  • CT05 - Comunicación de resultados de manera efectiva.
  • CT07 - Analizar y solucionar problemas de forma autónoma, adaptarse a situaciones imprevistas y tomar decisiones.
  • CE01 - Diseñar e implementar algoritmos en lenguajes de programación de alto nivel, utilizando metodologías actuales.
  • CE14 - Construir los tipos y estructuras de datos más adecuados a la resolución de un problema.

2.2. Resultados de aprendizaje

El alumno, para superar esta asignatura, deberá demostrar los siguientes resultados:

  • Analiza problemas, y diseña e implementa soluciones algorítmicas a dichos problemas.
  • Resuelve problemas de forma disciplinada, obteniendo una implementación correcta, eficaz y eficiente.
  • Utiliza el ordenador a nivel usuario, manejando sistemas operativos y entornos de programación.
  • Conoce el equipamiento informático tanto a nivel físico como lógico.
  • Identifica las necesidades de información para resolver problemas, la recupera, la interpreta y la aplica a la resolución.

2.3. Importancia de los resultados de aprendizaje

Esta materia supone el primer contacto con la programación orientada a objetos. Si atendemos a la resolución de problemas, la Informática trata del conocimiento, diseño y explotación de la computación y la tecnología de computadores, constituyendo una disciplina que:

  1. Desarrolla la capacidad de expresar soluciones como algoritmos, y el papel de estos para aproximarse a áreas como el diseño de sistemas, la resolución de problemas, la simulación y el modelado.
  2. Requiere una aproximación disciplinada a la resolución de problemas, de la que se esperan soluciones de calidad.
  3. Controla la complejidad de los problemas, primero a través de la abstracción y la simplificación, para diseñar a continuación soluciones mediante la integración de componentes.
  4. Facilita la comprensión de las oportunidades que ofrece la automatización de los procesos, y cómo las personas interaccionan con los computadores.
  5. Facilita el aprendizaje, a través de la experimentación, de principios básicos como la concisión y la elegancia, así como el reconocimiento de malas prácticas.

3. Evaluación

3.1. Tipo de pruebas y su valor sobre la nota final y criterios de evaluación para cada prueba

El proceso evaluativo incluirá dos tipos de actuación:

  • Un sistema de evaluación continua, que se realizará a lo largo de todo el período de aprendizaje.
  • Una prueba global de evaluación, que refleje la consecución de los resultados de aprendizaje, al término del período de enseñanza.

 

1-Sistema de evaluación continua.

Siguiendo el espíritu de Bolonia, en cuanto al grado de implicación y trabajo continuado del alumno a lo largo del curso, la evaluación de la asignatura contempla el sistema de evaluación continua como el más acorde para estar en consonancia con las directrices marcadas por el nuevo marco del EEES.

El sistema de evaluación continua va a contar con el siguiente grupo de actividades calificables:

  • Trabajos: Los trabajos consistirán en ejercicios prácticos, solución a problemas propuestos, cuestionarios, etc. Se valorarán la corrección y calidad de los resultados. Dichas prácticas se efectuarán en grupos reducidos, en función de la disponibilidad de aulas informáticas. El porcentaje respecto de la nota global de todos estos trabajos será de un 40%.
  • Pruebas evaluatorias: Hay dos a lo largo del curso. El porcentaje respecto de la nota global de cada prueba evaluatoria será de un 30%.

Es necesario superar por separado los trabajos y las pruebas escritas para que puedan contribuir al promedio de la nota final.

Para optar al sistema de Evaluación Continua se deberá asistir, al menos, a un 80% de las actividades presenciales (prácticas, visitas técnicas, clases, etc.)

 

2-Prueba global de evaluación final.

El alumno deberá optar por esta modalidad cuando, por su coyuntura personal, no pueda adaptarse al ritmo de trabajo requerido en el sistema de evaluación continua, haya suspendido o quisiera subir nota habiendo sido partícipe de dicha metodología de evaluación.

 

La prueba global de evaluación final va a contar con el siguiente grupo de actividades calificables:

  • Examen: Se realiza en las convocatorias oficiales. Siempre se podrá seguir esta opción a pesar de que el alumno haya usado el sistema de evaluación continua. (50% de la nota final).
  • Los trabajos, ejercicios prácticos, solución a problemas propuestos, cuestionarios, etc, que se hayan realizado durante el curso y que pueden entregarse en una nueva versión el día de la convocatoria. (50% de la nota final).

4. Metodología, actividades de aprendizaje, programa y recursos

4.1. Presentación metodológica general

La asignatura es eminentemente práctica, por tanto se ha planteado con una fuerte carga práctica tanto de elaboración de problemas en clase como realizando prácticas en el aula. También hay una parte teórica.

La organización de la enseñanza se llevará a cabo mediante estos pasos:

  • Clases de teoría: Actividades llevadas a cabo mediante la exposición del profesor, donde se muestran los conceptos de la asignatura, resaltando los fundamentos, estructurados en secciones, e interrelacionando unos con otros.
  • Clases prácticas: El profesor resuelve problemas prácticos o casos con propósitos demostrativos. Este tipo de enseñanza complementa la teoría mostrada en las clases con aspectos prácticos.
  • Sesiones de laboratorio: El grupo de la asignatura se divide en varios grupos de alumnos, de acuerdo con el número de alumnos matriculados, para conseguir grupos de tamaño pequeño.
  • Tutorías individuales: Llevadas a cabo de manera individual, con atención personalizada por parte de un profesor del departamento. Las tutorías pueden ser en persona y también online.

Si esta docencia no pudiera realizarse de forma presencial por causas sanitarias, se realizaría de forma telemática.

El primer día de clase se proporcionará más información acerca de la organización de la asignatura.

4.2. Actividades de aprendizaje

Actividades genéricas presenciales:

  • Clases teóricas: Se explicarán los conceptos teóricos de la asignatura y se desarrollarán ejemplos prácticos ilustrativos como apoyo a la teoría cuando se crea necesario.
  • Clases prácticas: Se realizarán problemas y casos prácticos como complemento a los conceptos teóricos estudiados.
  • Prácticas de laboratorio: Los alumnos serán divididos en varios grupos de no más de 20 alumnos/as, estando tutorizados por el profesor.

Actividades genéricas no presenciales

  • Estudio y asimilación de la teoría expuesta en las clases magistrales.
  • Comprensión y asimilación de problemas y casos prácticos resueltos en las clases prácticas.
  • Resolución de problemas propuestos, proyecto, etc.
  • Preparación de las prácticas de laboratorio, elaboración de los guiones e informes correspondientes.
  • Preparación de las pruebas escritas de evaluación continua y exámenes finales.

4.3. Programa

El programa de la asignatura se estructura en torno a dos componentes de contenidos complementarios:

  • Teóricos.
  • Prácticos.

Contenidos teóricos:

  • Lenguajes de programación orientada a objetos:
    • Introducción al paradigma de la programación orientada a objetos.
    • Clases y objetos.
  • Objetos, clases, métodos:
    • Definición de clase: atributos y métodos.
    • Creación de objetos: constructores.
    • Sobrecarga de métodos.
  • Concepto de herencia:
    • Herencia y atributos.
    • Herencia y métodos.
    • Métodos abstractos y clases abstractas.
  • Polimorfismo y paquetes:
    • Concepto e implementación.
    • Definición de interfaz, implementación y utilización.
    • Extensión de interfaces.
    • Excepciones: concepto y modo de uso.
    • Definición de paquetes.
    • Protección de acceso.
  • Serialización y persistencia:
    • Introducción a la persistencia de datos
    • Serialización de objetos.

Contenidos prácticos:

Cada tema expuesto en la sección anterior, lleva asociadas prácticas al respecto. Conforme se desarrollen los temas se irán planteando dichas prácticas, bien en clase o mediante la plataforma Moodle.

4.4. Planificación de las actividades de aprendizaje y calendario de fechas clave

La asignatura consta de 6 créditos ECTS, lo cual representa 150 horas de trabajo del alumno/a en la asignatura durante el semestre, es decir, 10 horas semanales durante 15 semanas lectivas.

Un resumen de la distribución temporal orientativa de una semana lectiva es el siguiente:

  • 1 hora de clases magistrales
  • 3 horas de prácticas de laboratorio
  • 6 horas de otras actividades

No obstante la tabla anterior podrá quedar más detallada, teniéndose en cuenta la distribución global siguiente:

  • 15 horas de clase magistral.
  • 41 horas de prácticas de laboratorio.
  • 4 horas de pruebas evaluatorias escritas, a razón de dos horas por prueba.
  • 45 horas de ejercicios y trabajos tutelados, repartidas a largo de las 15 semanas de duración del semestre.
  • 45 horas de estudio personal, repartidas a lo largo de las 15 semanas de duración del semestre.

 

Existe un cronograma orientativo preparado por el profesor que puede ser solicitado por los estudiantes que lo deseen.

Las fechas de los exámenes finales serán las publicadas de forma oficial en https://eupla.unizar.es

4.5. Bibliografía y recursos recomendados

http://psfunizar10.unizar.es/br13/egAsignaturas.php?codigo=29518